﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Frogs.Stability.CircuitBreaker
{
    /// <summary>
    /// Valid states for a circuit
    /// </summary>
    public enum CircuitState
    {
        /// <summary>
        /// Circuit is open and automatically fails calls.
        /// </summary>
        Open = 0,
        /// <summary>
        /// Circuit is in a partially closed state.  The next call
        /// will be executed and circuit status appropriately modified
        /// based on result.
        /// </summary>
        HalfWay,
        /// <summary>
        /// Circuit is closed and calls will be executed.
        /// </summary>
        Closed,
    }
}
